package learn.sort.bubble;

import learn.CommUtil;

import java.util.Arrays;

/**
 * 冒泡排序
 */
public class BubbleSort {
    public static void main(String[] args) {
        //int[] arr = CommUtil.arr(15);
        int[] arr = {9, 8, 7, 6, 5};
        int[] old = Arrays.copyOf(arr, arr.length);
        CommUtil.printArray("原数组", arr);
        process(arr);
        CommUtil.printArray("排序后", arr);
        CommUtil.check(old, arr);
    }

    /**
     * 冒泡排序
     * 1.
     */
    public static void process(int[] arr) {
        //1.外层循环:每次确定一个最大的数,并把数放在数组最后位置
        for (int i = 0; i < arr.length-1; i++) {
            //2.内层循环:两两比较大的靠后(交互位置)
            for (int j = 0; j < arr.length-1-i; j++) {
                if (arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1]=temp;
                }
            }
        }

    }
}
